Replicable parallel branch and bound search
نویسندگان
چکیده
Combinatorial branch and bound searches are a common technique for solving global optimisation and decisionproblems. Their performance oftendepends on good search order heuristics, refined over decades of algorithms research. Parallel search necessarily deviates from the sequential search order, sometimes dramatically and unpredictably, e.g. by distributing work at random. This can disrupt effective search order heuristics and lead to unexpected and highly variable parallel performance. The variability makes it hard to reason about the parallel performance of combinatorial searches. This paper presents a generic parallel branch and bound skeleton, implemented in Haskell, with replicable parallel performance. The skeleton aims to preserve the search order heuristic by distributing work in an ordered fashion, closely following the sequential search order. We demonstrate the generality of the approach by applying the skeleton to 40 instances of three combinatorial problems: Maximum Clique, 0/1 Knapsack and Travelling Salesperson. The overheads of our Haskell skeleton are reasonable: giving slowdown factors of between 1.9 and 6.2 compared with a class-leading, dedicated, and highly optimised C++ Maximum Clique solver. We demonstrate scaling up to 200 cores of a Beowulf cluster, achieving speedups of 100x for several Maximum Clique instances. We demonstrate low variance of parallel performance across all instances of the three combinatorial problems and at all scales up to 200 cores, with median Relative Standard Deviation (RSD) below 2%. Parallel solvers that do not follow the sequential search order exhibit far higher variance, with median RSD exceeding 85% for Knapsack. © 2017 The Author(s). Published by Elsevier Inc. This is an open access article under the CC BY license (http://creativecommons.org/licenses/by/4.0/).
منابع مشابه
A Comparative Study of Exact Algorithms for the Two Dimensional Strip Packing Problem
In this paper we consider a two dimensional strip packing problem. The problem consists of packing a set of rectangular items in one strip of width W and infinite height. They must be packed without overlapping, parallel to the edge of the strip and we assume that the items are oriented, i.e. they cannot be rotated. To solve this problem, we use three exact methods: a branch and bound method, a...
متن کاملParallel Search-Based Methods in Optimization
Search-based methods like Branch and Bound and Branch and Cut are essential tools in solving diicult problems to optimality in the eld of combinatorial optimization, and much experience has been gathered regarding the design and implementation of parallel methods in this eld. Search-based methods appear, however, also in connection with certain continuous optimization problems and problems in A...
متن کاملHeuristic approach to solve hybrid flow shop scheduling problem with unrelated parallel machines
In hybrid flow shop scheduling problem (HFS) with unrelated parallel machines, a set of n jobs are processed on k machines. A mixed integer linear programming (MILP) model for the HFS scheduling problems with unrelated parallel machines has been proposed to minimize the maximum completion time (makespan). Since the problem is shown to be NP-complete, it is necessary to use heuristic methods to ...
متن کاملParallel Combinatorial Search on Computer Cluster: Sam Loyd’s Puzzle
The paper investigates the efficiency of parallel branch-and-bound search on multicomputer cluster for the case of parallel solving Sam Loyd’s puzzle. Performance estimation and analysis as well as parallelism profiling have been made for MPI implementation developed on the basis of the manager/workers parallel algorithmic paradigm. The impact of the number of the processors and the computation...
متن کاملParallel Best-First Search of State-Space Graphs: A Summary of Results
This paper presents many different parallel formulations of the A*/Branch-and-Bound search algorithm. The parallel formulations primarily differ in the data structures used. Some formulations are suited only for shared-memory architectures, whereas others are suited for distributedmemory architectures as well. These parallel formulations have been implemented to solve the vertex cover problem a...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- J. Parallel Distrib. Comput.
دوره 113 شماره
صفحات -
تاریخ انتشار 2018